/*
Copyright (C) 2007 Lahiru Lakmal Priyadarshana.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,  software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or  implied.
See the License for the specific language governing permissions  and
limitations under the License.
*/

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0366 */
/* at Mon Jun 11 00:34:38 2007
 */
/* Compiler settings for .\ScreenPickerHelper.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef __ScreenPickerHelper_h__
#define __ScreenPickerHelper_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IScreenPickerHelperObj_FWD_DEFINED__
#define __IScreenPickerHelperObj_FWD_DEFINED__
typedef interface IScreenPickerHelperObj IScreenPickerHelperObj;
#endif 	/* __IScreenPickerHelperObj_FWD_DEFINED__ */


#ifndef __ScreenPickerHelperObj_FWD_DEFINED__
#define __ScreenPickerHelperObj_FWD_DEFINED__

#ifdef __cplusplus
typedef class ScreenPickerHelperObj ScreenPickerHelperObj;
#else
typedef struct ScreenPickerHelperObj ScreenPickerHelperObj;
#endif /* __cplusplus */

#endif 	/* __ScreenPickerHelperObj_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

#ifndef __IScreenPickerHelperObj_INTERFACE_DEFINED__
#define __IScreenPickerHelperObj_INTERFACE_DEFINED__

/* interface IScreenPickerHelperObj */
/* [unique][helpstring][nonextensible][dual][uuid][object] */ 


EXTERN_C const IID IID_IScreenPickerHelperObj;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7BC8DC1D-8EEE-4FF9-BD36-55D975FCBFE8")
    IScreenPickerHelperObj : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNumber( 
            /* [in] */ BSTR autocp,
            /* [retval][out] */ BSTR *message) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IScreenPickerHelperObjVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IScreenPickerHelperObj * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IScreenPickerHelperObj * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IScreenPickerHelperObj * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IScreenPickerHelperObj * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IScreenPickerHelperObj * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IScreenPickerHelperObj * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IScreenPickerHelperObj * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetNumber )( 
            IScreenPickerHelperObj * This,
            /* [in] */ BSTR autocp,
            /* [retval][out] */ BSTR *message);
        
        END_INTERFACE
    } IScreenPickerHelperObjVtbl;

    interface IScreenPickerHelperObj
    {
        CONST_VTBL struct IScreenPickerHelperObjVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IScreenPickerHelperObj_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IScreenPickerHelperObj_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IScreenPickerHelperObj_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IScreenPickerHelperObj_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IScreenPickerHelperObj_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IScreenPickerHelperObj_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IScreenPickerHelperObj_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IScreenPickerHelperObj_GetNumber(This,autocp,message)	\
    (This)->lpVtbl -> GetNumber(This,autocp,message)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IScreenPickerHelperObj_GetNumber_Proxy( 
    IScreenPickerHelperObj * This,
    /* [in] */ BSTR autocp,
    /* [retval][out] */ BSTR *message);


void __RPC_STUB IScreenPickerHelperObj_GetNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IScreenPickerHelperObj_INTERFACE_DEFINED__ */



#ifndef __ScreenPickerHelperLib_LIBRARY_DEFINED__
#define __ScreenPickerHelperLib_LIBRARY_DEFINED__

/* library ScreenPickerHelperLib */
/* [helpstring][version][uuid] */ 


EXTERN_C const IID LIBID_ScreenPickerHelperLib;

EXTERN_C const CLSID CLSID_ScreenPickerHelperObj;

#ifdef __cplusplus

class DECLSPEC_UUID("18A68490-6437-4902-9A1F-5EC9980A184E")
ScreenPickerHelperObj;
#endif
#endif /* __ScreenPickerHelperLib_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


